/*
** colors.h for colors in /home/mesteche/CoDe/pratique
** 
** Made by estephe bouvet
** Login   <bouvet_e@epitech.net>
** 
** Started on  Sat Mar 16 13:51:04 2013 estephe bouvet
** Last update Thu Mar 28 22:11:18 2013 estephe bouvet
*/

#ifndef __COLORS_H__
#define __COLORS_H__

#include <stdio.h>

#define C_END			"\033[00m"
#define C_BOLD(str)		"\033[01m"str C_END
#define C_BLACK(str) 		"\033[30m"str C_END
#define C_RED(str)		"\033[31m"str C_END
#define C_GREEN(str)		"\033[32m"str C_END
#define C_YELLOW(str)		"\033[33m"str C_END
#define C_BLUE(str)		"\033[34m"str C_END
#define C_PINK(str)		"\033[35m"str C_END
#define C_CYAN(str)		"\033[36m"str C_END

#define CY_DEBUG(str, ...)	printf(C_BOLD(C_YELLOW(str))"\n", ##__VA_ARGS__)
#define CG_DEBUG(str, ...)	printf(C_BOLD(C_GREEN(str))"\n", ##__VA_ARGS__)
#define CC_DEBUG(str, ...)	printf(C_BOLD(C_CYAN(str))"\n", ##__VA_ARGS__)
#define CP_DEBUG(str, ...)	printf(C_BOLD(C_PINK(str))"\n", ##__VA_ARGS__)

#define C_ERROR(str, ...)	printf(C_BOLD(C_RED(str))"\n", ##__VA_ARGS__)

#define DEBUG_VAR(var, type)	CY_DEBUG("%"type, var)
#define DEBUG_VAR_V(var, type)	CY_DEBUG("file : %s :: line : %d :: "#var " : \"%"type"\"", __FILE__, __LINE__, var)
#define DEBUG_STR(str)		CG_DEBUG(str)

#endif /*__COLORS_H__*/
